
-- --------------------------------------------------
-- Entity Designer DDL Script for SQL Server 2005, 2008, and Azure
-- --------------------------------------------------
-- Date Created: 05/25/2012 00:41:12
-- Generated from EDMX file: C:\Users\Erolando\Dropbox\Proyectos\Backup 22-05-2012 Comukrte\Comukrte\Comukrte\Modelo.edmx
-- --------------------------------------------------

--SET QUOTED_IDENTIFIER OFF;
--GO
--USE [comukrte];
--GO
--IF SCHEMA_ID(N'dbo') IS NULL EXECUTE(N'CREATE SCHEMA [dbo]');
--GO

-- --------------------------------------------------
-- Dropping existing FOREIGN KEY constraints
-- --------------------------------------------------

IF OBJECT_ID(N'[dbo].[FK_tblCursos_tblInstructoresCurso1]', 'F') IS NOT NULL
    ALTER TABLE [dbo].[tblCursos] DROP CONSTRAINT [FK_tblCursos_tblInstructoresCurso1];
GO
IF OBJECT_ID(N'[dbo].[FK_tblCursos_tblMetodosCurso]', 'F') IS NOT NULL
    ALTER TABLE [dbo].[tblCursos] DROP CONSTRAINT [FK_tblCursos_tblMetodosCurso];
GO
IF OBJECT_ID(N'[dbo].[FK_tblCursosConocimientos_tblConocimientos]', 'F') IS NOT NULL
    ALTER TABLE [dbo].[tblCursosConocimientos] DROP CONSTRAINT [FK_tblCursosConocimientos_tblConocimientos];
GO
IF OBJECT_ID(N'[dbo].[FK_tblCursosConocimientos_tblCursos]', 'F') IS NOT NULL
    ALTER TABLE [dbo].[tblCursosConocimientos] DROP CONSTRAINT [FK_tblCursosConocimientos_tblCursos];
GO
IF OBJECT_ID(N'[dbo].[FK_tblPersonal_tblAreas]', 'F') IS NOT NULL
    ALTER TABLE [dbo].[tblPersonal] DROP CONSTRAINT [FK_tblPersonal_tblAreas];
GO
IF OBJECT_ID(N'[dbo].[FK_tblPersonal_tblPuestos]', 'F') IS NOT NULL
    ALTER TABLE [dbo].[tblPersonal] DROP CONSTRAINT [FK_tblPersonal_tblPuestos];
GO
IF OBJECT_ID(N'[dbo].[FK_tblPersonalCurso_tblCursos]', 'F') IS NOT NULL
    ALTER TABLE [dbo].[tblPersonalCurso] DROP CONSTRAINT [FK_tblPersonalCurso_tblCursos];
GO
IF OBJECT_ID(N'[dbo].[FK_tblPersonalCurso_tblPersonal]', 'F') IS NOT NULL
    ALTER TABLE [dbo].[tblPersonalCurso] DROP CONSTRAINT [FK_tblPersonalCurso_tblPersonal];
GO
IF OBJECT_ID(N'[dbo].[FK_tblPuestosConocimientos_tblConocimientos]', 'F') IS NOT NULL
    ALTER TABLE [dbo].[tblPuestosConocimientos] DROP CONSTRAINT [FK_tblPuestosConocimientos_tblConocimientos];
GO
IF OBJECT_ID(N'[dbo].[FK_tblPuestosConocimientos_tblPuestos]', 'F') IS NOT NULL
    ALTER TABLE [dbo].[tblPuestosConocimientos] DROP CONSTRAINT [FK_tblPuestosConocimientos_tblPuestos];
GO

-- --------------------------------------------------
-- Dropping existing tables
-- --------------------------------------------------

IF OBJECT_ID(N'[dbo].[sysdiagrams]', 'U') IS NOT NULL
    DROP TABLE [dbo].[sysdiagrams];
GO
IF OBJECT_ID(N'[dbo].[tblAreas]', 'U') IS NOT NULL
    DROP TABLE [dbo].[tblAreas];
GO
IF OBJECT_ID(N'[dbo].[tblConocimientos]', 'U') IS NOT NULL
    DROP TABLE [dbo].[tblConocimientos];
GO
IF OBJECT_ID(N'[dbo].[tblCursos]', 'U') IS NOT NULL
    DROP TABLE [dbo].[tblCursos];
GO
IF OBJECT_ID(N'[dbo].[tblCursosConocimientos]', 'U') IS NOT NULL
    DROP TABLE [dbo].[tblCursosConocimientos];
GO
IF OBJECT_ID(N'[dbo].[tblInstructoresCurso]', 'U') IS NOT NULL
    DROP TABLE [dbo].[tblInstructoresCurso];
GO
IF OBJECT_ID(N'[dbo].[tblMetodosCurso]', 'U') IS NOT NULL
    DROP TABLE [dbo].[tblMetodosCurso];
GO
IF OBJECT_ID(N'[dbo].[tblPersonal]', 'U') IS NOT NULL
    DROP TABLE [dbo].[tblPersonal];
GO
IF OBJECT_ID(N'[dbo].[tblPersonalCurso]', 'U') IS NOT NULL
    DROP TABLE [dbo].[tblPersonalCurso];
GO
IF OBJECT_ID(N'[dbo].[tblPuestos]', 'U') IS NOT NULL
    DROP TABLE [dbo].[tblPuestos];
GO
IF OBJECT_ID(N'[dbo].[tblPuestosConocimientos]', 'U') IS NOT NULL
    DROP TABLE [dbo].[tblPuestosConocimientos];
GO
IF OBJECT_ID(N'[dbo].[tblUsuarios]', 'U') IS NOT NULL
    DROP TABLE [dbo].[tblUsuarios];
GO

-- --------------------------------------------------
-- Creating all tables
-- --------------------------------------------------

-- Creating table 'sysdiagrams'
CREATE TABLE [dbo].[sysdiagrams] (
    [name] nvarchar(128)  NOT NULL,
    [principal_id] int  NOT NULL,
    [diagram_id] int IDENTITY(1,1) NOT NULL,
    [version] int  NULL,
    [definition] varbinary(max)  NULL
);
GO

-- Creating table 'tblAreas'
CREATE TABLE [dbo].[tblAreas] (
    [AreaId] int IDENTITY(1,1) NOT NULL,
    [Nombre] nvarchar(50)  NOT NULL
);
GO

-- Creating table 'tblCursos'
CREATE TABLE [dbo].[tblCursos] (
    [CursoId] int IDENTITY(1,1) NOT NULL,
    [InstructorCursoId] int  NOT NULL,
    [MetodoCursoId] int  NOT NULL,
    [Descripcion] nvarchar(200)  NOT NULL,
    [FechaInicio] datetime  NOT NULL,
    [FechaFinal] datetime  NOT NULL
);
GO

-- Creating table 'tblInstructoresCurso'
CREATE TABLE [dbo].[tblInstructoresCurso] (
    [InstructorCursoId] int IDENTITY(1,1) NOT NULL,
    [Nombre] nvarchar(100)  NOT NULL,
    [PrimerApellido] nvarchar(50)  NOT NULL,
    [SegundoApellido] nvarchar(50)  NOT NULL
);
GO

-- Creating table 'tblMetodosCurso'
CREATE TABLE [dbo].[tblMetodosCurso] (
    [MetodoCursoId] int IDENTITY(1,1) NOT NULL,
    [Descripcion] nvarchar(200)  NOT NULL
);
GO

-- Creating table 'tblPersonal'
CREATE TABLE [dbo].[tblPersonal] (
    [PersonaId] int IDENTITY(1,1) NOT NULL,
    [AreaId] int  NOT NULL,
    [NoEmpleado] int  NOT NULL,
    [Nombres] nvarchar(100)  NOT NULL,
    [PrimerApellido] nvarchar(50)  NOT NULL,
    [SegundoApellido] nvarchar(50)  NOT NULL,
    [PuestoId] int  NOT NULL
);
GO

-- Creating table 'tblPuestos'
CREATE TABLE [dbo].[tblPuestos] (
    [PuestoId] int IDENTITY(1,1) NOT NULL,
    [Nombre] nvarchar(100)  NOT NULL
);
GO

-- Creating table 'tblUsuarios'
CREATE TABLE [dbo].[tblUsuarios] (
    [UsuarioId] int IDENTITY(1,1) NOT NULL,
    [Nombre] nvarchar(200)  NOT NULL,
    [Usuario] nvarchar(15)  NOT NULL,
    [Contrasena] nvarchar(10)  NOT NULL,
    [Rol] nvarchar(50)  NOT NULL
);
GO

-- Creating table 'tblConocimientos'
CREATE TABLE [dbo].[tblConocimientos] (
    [ConocimientoId] int IDENTITY(1,1) NOT NULL,
    [Nombre] nvarchar(100)  NOT NULL
);
GO

-- Creating table 'tblPersonalCurso'
CREATE TABLE [dbo].[tblPersonalCurso] (
    [tblCursos_CursoId] int  NOT NULL,
    [tblPersonal_PersonaId] int  NOT NULL
);
GO

-- Creating table 'tblCursosConocimientos'
CREATE TABLE [dbo].[tblCursosConocimientos] (
    [tblConocimientos_ConocimientoId] int  NOT NULL,
    [tblCursos_CursoId] int  NOT NULL
);
GO

-- Creating table 'tblPuestosConocimientos'
CREATE TABLE [dbo].[tblPuestosConocimientos] (
    [tblConocimientos_ConocimientoId] int  NOT NULL,
    [tblPuestos_PuestoId] int  NOT NULL
);
GO

-- --------------------------------------------------
-- Creating all PRIMARY KEY constraints
-- --------------------------------------------------

-- Creating primary key on [diagram_id] in table 'sysdiagrams'
ALTER TABLE [dbo].[sysdiagrams]
ADD CONSTRAINT [PK_sysdiagrams]
    PRIMARY KEY CLUSTERED ([diagram_id] ASC);
GO

-- Creating primary key on [AreaId] in table 'tblAreas'
ALTER TABLE [dbo].[tblAreas]
ADD CONSTRAINT [PK_tblAreas]
    PRIMARY KEY CLUSTERED ([AreaId] ASC);
GO

-- Creating primary key on [CursoId] in table 'tblCursos'
ALTER TABLE [dbo].[tblCursos]
ADD CONSTRAINT [PK_tblCursos]
    PRIMARY KEY CLUSTERED ([CursoId] ASC);
GO

-- Creating primary key on [InstructorCursoId] in table 'tblInstructoresCurso'
ALTER TABLE [dbo].[tblInstructoresCurso]
ADD CONSTRAINT [PK_tblInstructoresCurso]
    PRIMARY KEY CLUSTERED ([InstructorCursoId] ASC);
GO

-- Creating primary key on [MetodoCursoId] in table 'tblMetodosCurso'
ALTER TABLE [dbo].[tblMetodosCurso]
ADD CONSTRAINT [PK_tblMetodosCurso]
    PRIMARY KEY CLUSTERED ([MetodoCursoId] ASC);
GO

-- Creating primary key on [PersonaId] in table 'tblPersonal'
ALTER TABLE [dbo].[tblPersonal]
ADD CONSTRAINT [PK_tblPersonal]
    PRIMARY KEY CLUSTERED ([PersonaId] ASC);
GO

-- Creating primary key on [PuestoId] in table 'tblPuestos'
ALTER TABLE [dbo].[tblPuestos]
ADD CONSTRAINT [PK_tblPuestos]
    PRIMARY KEY CLUSTERED ([PuestoId] ASC);
GO

-- Creating primary key on [UsuarioId] in table 'tblUsuarios'
ALTER TABLE [dbo].[tblUsuarios]
ADD CONSTRAINT [PK_tblUsuarios]
    PRIMARY KEY CLUSTERED ([UsuarioId] ASC);
GO

-- Creating primary key on [ConocimientoId] in table 'tblConocimientos'
ALTER TABLE [dbo].[tblConocimientos]
ADD CONSTRAINT [PK_tblConocimientos]
    PRIMARY KEY CLUSTERED ([ConocimientoId] ASC);
GO

-- Creating primary key on [tblCursos_CursoId], [tblPersonal_PersonaId] in table 'tblPersonalCurso'
ALTER TABLE [dbo].[tblPersonalCurso]
ADD CONSTRAINT [PK_tblPersonalCurso]
    PRIMARY KEY NONCLUSTERED ([tblCursos_CursoId], [tblPersonal_PersonaId] ASC);
GO

-- Creating primary key on [tblConocimientos_ConocimientoId], [tblCursos_CursoId] in table 'tblCursosConocimientos'
ALTER TABLE [dbo].[tblCursosConocimientos]
ADD CONSTRAINT [PK_tblCursosConocimientos]
    PRIMARY KEY NONCLUSTERED ([tblConocimientos_ConocimientoId], [tblCursos_CursoId] ASC);
GO

-- Creating primary key on [tblConocimientos_ConocimientoId], [tblPuestos_PuestoId] in table 'tblPuestosConocimientos'
ALTER TABLE [dbo].[tblPuestosConocimientos]
ADD CONSTRAINT [PK_tblPuestosConocimientos]
    PRIMARY KEY NONCLUSTERED ([tblConocimientos_ConocimientoId], [tblPuestos_PuestoId] ASC);
GO

-- --------------------------------------------------
-- Creating all FOREIGN KEY constraints
-- --------------------------------------------------

-- Creating foreign key on [AreaId] in table 'tblPersonal'
ALTER TABLE [dbo].[tblPersonal]
ADD CONSTRAINT [FK_tblPersonal_tblAreas]
    FOREIGN KEY ([AreaId])
    REFERENCES [dbo].[tblAreas]
        ([AreaId])
    ON DELETE NO ACTION ON UPDATE NO ACTION;

-- Creating non-clustered index for FOREIGN KEY 'FK_tblPersonal_tblAreas'
CREATE INDEX [IX_FK_tblPersonal_tblAreas]
ON [dbo].[tblPersonal]
    ([AreaId]);
GO

-- Creating foreign key on [InstructorCursoId] in table 'tblCursos'
ALTER TABLE [dbo].[tblCursos]
ADD CONSTRAINT [FK_tblCursos_tblInstructoresCurso1]
    FOREIGN KEY ([InstructorCursoId])
    REFERENCES [dbo].[tblInstructoresCurso]
        ([InstructorCursoId])
    ON DELETE NO ACTION ON UPDATE NO ACTION;

-- Creating non-clustered index for FOREIGN KEY 'FK_tblCursos_tblInstructoresCurso1'
CREATE INDEX [IX_FK_tblCursos_tblInstructoresCurso1]
ON [dbo].[tblCursos]
    ([InstructorCursoId]);
GO

-- Creating foreign key on [MetodoCursoId] in table 'tblCursos'
ALTER TABLE [dbo].[tblCursos]
ADD CONSTRAINT [FK_tblCursos_tblMetodosCurso]
    FOREIGN KEY ([MetodoCursoId])
    REFERENCES [dbo].[tblMetodosCurso]
        ([MetodoCursoId])
    ON DELETE NO ACTION ON UPDATE NO ACTION;

-- Creating non-clustered index for FOREIGN KEY 'FK_tblCursos_tblMetodosCurso'
CREATE INDEX [IX_FK_tblCursos_tblMetodosCurso]
ON [dbo].[tblCursos]
    ([MetodoCursoId]);
GO

-- Creating foreign key on [PuestoId] in table 'tblPersonal'
ALTER TABLE [dbo].[tblPersonal]
ADD CONSTRAINT [FK_tblPersonal_tblPuestos]
    FOREIGN KEY ([PuestoId])
    REFERENCES [dbo].[tblPuestos]
        ([PuestoId])
    ON DELETE NO ACTION ON UPDATE NO ACTION;

-- Creating non-clustered index for FOREIGN KEY 'FK_tblPersonal_tblPuestos'
CREATE INDEX [IX_FK_tblPersonal_tblPuestos]
ON [dbo].[tblPersonal]
    ([PuestoId]);
GO

-- Creating foreign key on [tblCursos_CursoId] in table 'tblPersonalCurso'
ALTER TABLE [dbo].[tblPersonalCurso]
ADD CONSTRAINT [FK_tblPersonalCurso_tblCursos]
    FOREIGN KEY ([tblCursos_CursoId])
    REFERENCES [dbo].[tblCursos]
        ([CursoId])
    ON DELETE NO ACTION ON UPDATE NO ACTION;
GO

-- Creating foreign key on [tblPersonal_PersonaId] in table 'tblPersonalCurso'
ALTER TABLE [dbo].[tblPersonalCurso]
ADD CONSTRAINT [FK_tblPersonalCurso_tblPersonal]
    FOREIGN KEY ([tblPersonal_PersonaId])
    REFERENCES [dbo].[tblPersonal]
        ([PersonaId])
    ON DELETE NO ACTION ON UPDATE NO ACTION;

-- Creating non-clustered index for FOREIGN KEY 'FK_tblPersonalCurso_tblPersonal'
CREATE INDEX [IX_FK_tblPersonalCurso_tblPersonal]
ON [dbo].[tblPersonalCurso]
    ([tblPersonal_PersonaId]);
GO

-- Creating foreign key on [tblConocimientos_ConocimientoId] in table 'tblCursosConocimientos'
ALTER TABLE [dbo].[tblCursosConocimientos]
ADD CONSTRAINT [FK_tblCursosConocimientos_tblConocimientos]
    FOREIGN KEY ([tblConocimientos_ConocimientoId])
    REFERENCES [dbo].[tblConocimientos]
        ([ConocimientoId])
    ON DELETE NO ACTION ON UPDATE NO ACTION;
GO

-- Creating foreign key on [tblCursos_CursoId] in table 'tblCursosConocimientos'
ALTER TABLE [dbo].[tblCursosConocimientos]
ADD CONSTRAINT [FK_tblCursosConocimientos_tblCursos]
    FOREIGN KEY ([tblCursos_CursoId])
    REFERENCES [dbo].[tblCursos]
        ([CursoId])
    ON DELETE NO ACTION ON UPDATE NO ACTION;

-- Creating non-clustered index for FOREIGN KEY 'FK_tblCursosConocimientos_tblCursos'
CREATE INDEX [IX_FK_tblCursosConocimientos_tblCursos]
ON [dbo].[tblCursosConocimientos]
    ([tblCursos_CursoId]);
GO

-- Creating foreign key on [tblConocimientos_ConocimientoId] in table 'tblPuestosConocimientos'
ALTER TABLE [dbo].[tblPuestosConocimientos]
ADD CONSTRAINT [FK_tblPuestosConocimientos_tblConocimientos]
    FOREIGN KEY ([tblConocimientos_ConocimientoId])
    REFERENCES [dbo].[tblConocimientos]
        ([ConocimientoId])
    ON DELETE NO ACTION ON UPDATE NO ACTION;
GO

-- Creating foreign key on [tblPuestos_PuestoId] in table 'tblPuestosConocimientos'
ALTER TABLE [dbo].[tblPuestosConocimientos]
ADD CONSTRAINT [FK_tblPuestosConocimientos_tblPuestos]
    FOREIGN KEY ([tblPuestos_PuestoId])
    REFERENCES [dbo].[tblPuestos]
        ([PuestoId])
    ON DELETE NO ACTION ON UPDATE NO ACTION;

-- Creating non-clustered index for FOREIGN KEY 'FK_tblPuestosConocimientos_tblPuestos'
CREATE INDEX [IX_FK_tblPuestosConocimientos_tblPuestos]
ON [dbo].[tblPuestosConocimientos]
    ([tblPuestos_PuestoId]);
GO

-- --------------------------------------------------
-- Script has ended
-- --------------------------------------------------